#ifndef GUARD_CONSTANTS_ITEMS_H
#define GUARD_CONSTANTS_ITEMS_H

#define ITEM_NONE 0

// Poké Balls
#define ITEM_POKE_BALL 1
#define ITEM_GREAT_BALL 2
#define ITEM_ULTRA_BALL 3
#define ITEM_MASTER_BALL 4
#define ITEM_PREMIER_BALL 5
#define ITEM_HEAL_BALL 6
#define ITEM_NET_BALL 7
#define ITEM_NEST_BALL 8
#define ITEM_DIVE_BALL 9
#define ITEM_DUSK_BALL 10
#define ITEM_TIMER_BALL 11
#define ITEM_QUICK_BALL 12
#define ITEM_REPEAT_BALL 13
#define ITEM_LUXURY_BALL 14
#define ITEM_LEVEL_BALL 15
#define ITEM_LURE_BALL 16
#define ITEM_MOON_BALL 17
#define ITEM_FRIEND_BALL 18
#define ITEM_LOVE_BALL 19
#define ITEM_FAST_BALL 20
#define ITEM_HEAVY_BALL 21
#define ITEM_DREAM_BALL 22
#define ITEM_SAFARI_BALL 23
#define ITEM_SPORT_BALL 24
#define ITEM_PARK_BALL 25
#define ITEM_BEAST_BALL 26
#define ITEM_CHERISH_BALL 27
#define ITEM_ROGUE_BALL 28

// Note: If moving ball IDs around, updating FIRST_BALL/LAST_BALL is not sufficient
//       Several places expect the ball IDs to be first and contiguous (e.g. MON_DATA_POKEBALL)
//       If adding new balls, it's easiest to insert them after the last ball and increment the below IDs (and removing ITEM_034 for example)
#define FIRST_BALL ITEM_POKE_BALL
#define LAST_BALL  ITEM_ROGUE_BALL

// RogueNote: Some reserved item slots just incase we want to add some hisui balls or something
#define ITEM_RESERVED_0 29
#define ITEM_RESERVED_1 30
#define ITEM_RESERVED_2 31
#define ITEM_RESERVED_3 32
#define ITEM_RESERVED_4 33
#define ITEM_RESERVED_5 34
#define ITEM_RESERVED_6 35
#define ITEM_RESERVED_7 36
#define ITEM_RESERVED_8 37
#define ITEM_RESERVED_9 38

// Medicine
#define ITEM_POTION 39
#define ITEM_SUPER_POTION 40
#define ITEM_HYPER_POTION 41
#define ITEM_MAX_POTION 42
#define ITEM_FULL_RESTORE 43
#define ITEM_REVIVE 44
#define ITEM_MAX_REVIVE 45
#define ITEM_FRESH_WATER 46
#define ITEM_SODA_POP 47
#define ITEM_LEMONADE 48
#define ITEM_MOOMOO_MILK 49
#define ITEM_ENERGY_POWDER 50
#define ITEM_ENERGYPOWDER ITEM_ENERGY_POWDER // Pre-Gen VI name
#define ITEM_ENERGY_ROOT 51
#define ITEM_HEAL_POWDER 52
#define ITEM_REVIVAL_HERB 53
#define ITEM_ANTIDOTE 54
#define ITEM_PARALYZE_HEAL 55
#define ITEM_PARLYZ_HEAL ITEM_PARALYZE_HEAL // Pre-Gen VI name
#define ITEM_BURN_HEAL 56
#define ITEM_ICE_HEAL 57
#define ITEM_AWAKENING 58
#define ITEM_FULL_HEAL 59
#define ITEM_ETHER 60
#define ITEM_MAX_ETHER 61
#define ITEM_ELIXIR 62
#define ITEM_ELIXER ITEM_ELIXIR // Pre-Gen III name
#define ITEM_MAX_ELIXIR 63
#define ITEM_MAX_ELIXER ITEM_MAX_ELIXIR // Pre-Gen III name
#define ITEM_BERRY_JUICE 64
#define ITEM_SACRED_ASH 65
#define ITEM_SWEET_HEART 66
#define ITEM_MAX_HONEY 67

// Regional Specialties
#define ITEM_PEWTER_CRUNCHIES 68
#define ITEM_RAGE_CANDY_BAR 69
#define ITEM_RAGECANDYBAR ITEM_RAGE_CANDY_BAR // Pre-Gen VI name
#define ITEM_LAVA_COOKIE 70
#define ITEM_OLD_GATEAU 71
#define ITEM_CASTELIACONE 72
#define ITEM_LUMIOSE_GALETTE 73
#define ITEM_SHALOUR_SABLE 74
#define ITEM_BIG_MALASADA 75

// Vitamins
#define ITEM_HP_UP 76
#define ITEM_PROTEIN 77
#define ITEM_IRON 78
#define ITEM_CALCIUM 79
#define ITEM_ZINC 80
#define ITEM_CARBOS 81
#define ITEM_PP_UP 82
#define ITEM_PP_MAX 83

// EV Feathers
#define ITEM_HEALTH_FEATHER 84
#define ITEM_HEALTH_WING ITEM_HEALTH_FEATHER // Pre-Gen VIII name
#define ITEM_MUSCLE_FEATHER 85
#define ITEM_MUSCLE_WING ITEM_MUSCLE_FEATHER // Pre-Gen VIII name
#define ITEM_RESIST_FEATHER 86
#define ITEM_RESIST_WING ITEM_RESIST_FEATHER // Pre-Gen VIII name
#define ITEM_GENIUS_FEATHER 87
#define ITEM_GENIUS_WING ITEM_GENIUS_FEATHER // Pre-Gen VIII name
#define ITEM_CLEVER_FEATHER 88
#define ITEM_CLEVER_WING ITEM_CLEVER_FEATHER // Pre-Gen VIII name
#define ITEM_SWIFT_FEATHER 89
#define ITEM_SWIFT_WING ITEM_SWIFT_FEATHER // Pre-Gen VIII name

// Ability Modifiers
#define ITEM_ABILITY_CAPSULE 90
#define ITEM_ABILITY_PATCH 91

// Mints
#define ITEM_LONELY_MINT 92
#define ITEM_ADAMANT_MINT 93
#define ITEM_NAUGHTY_MINT 94
#define ITEM_BRAVE_MINT 95
#define ITEM_BOLD_MINT 96
#define ITEM_IMPISH_MINT 97
#define ITEM_LAX_MINT 98
#define ITEM_RELAXED_MINT 99
#define ITEM_MODEST_MINT 100
#define ITEM_MILD_MINT 101
#define ITEM_RASH_MINT 102
#define ITEM_QUIET_MINT 103
#define ITEM_CALM_MINT 104
#define ITEM_GENTLE_MINT 105
#define ITEM_CAREFUL_MINT 106
#define ITEM_SASSY_MINT 107
#define ITEM_TIMID_MINT 108
#define ITEM_HASTY_MINT 109
#define ITEM_JOLLY_MINT 110
#define ITEM_NAIVE_MINT 111
#define ITEM_SERIOUS_MINT 112

// Candy
#define ITEM_RARE_CANDY 113
#define ITEM_EXP_CANDY_XS 114
#define ITEM_EXP_CANDY_S 115
#define ITEM_EXP_CANDY_M 116
#define ITEM_EXP_CANDY_L 117
#define ITEM_EXP_CANDY_XL 118
#define ITEM_DYNAMAX_CANDY 119

// Medicinal Flutes
#define ITEM_BLUE_FLUTE 120
#define ITEM_YELLOW_FLUTE 121
#define ITEM_RED_FLUTE 122

// Encounter-modifying Flutes
#define ITEM_BLACK_FLUTE 123
#define ITEM_WHITE_FLUTE 124

// Encounter Modifiers
#define ITEM_REPEL 125
#define ITEM_SUPER_REPEL 126
#define ITEM_MAX_REPEL 127
#define ITEM_LURE 128
#define ITEM_SUPER_LURE 129
#define ITEM_MAX_LURE 130

#define ITEM_ESCAPE_ROPE 131

// X Items
#define ITEM_X_ATTACK 132
#define ITEM_X_DEFENSE 133
#define ITEM_X_DEFEND ITEM_X_DEFENSE // Pre-Gen VI name
#define ITEM_X_SP_ATK 134
#define ITEM_X_SPECIAL ITEM_X_SP_ATK // Pre-Gen VI name
#define ITEM_X_SP_DEF 135
#define ITEM_X_SPEED 136
#define ITEM_X_ACCURACY 137

#define ITEM_DIRE_HIT 138
#define ITEM_GUARD_SPEC 139

// Escape Items
#define ITEM_POKE_DOLL 140
#define ITEM_FLUFFY_TAIL 141
#define ITEM_POKE_TOY 142

#define ITEM_MAX_MUSHROOMS 143

// Treasures
#define ITEM_BOTTLE_CAP 144
#define ITEM_GOLD_BOTTLE_CAP 145
#define ITEM_NUGGET 146
#define ITEM_BIG_NUGGET 147
#define ITEM_TINY_MUSHROOM 148
#define ITEM_TINYMUSHROOM ITEM_TINY_MUSHROOM // Pre-Gen VI name
#define ITEM_BIG_MUSHROOM 149
#define ITEM_BALM_MUSHROOM 150
#define ITEM_BALMMUSHROOM ITEM_BALM_MUSHROOM // Pre-Gen VI name
#define ITEM_PEARL 151
#define ITEM_BIG_PEARL 152
#define ITEM_PEARL_STRING 153
#define ITEM_STARDUST 154
#define ITEM_STAR_PIECE 155
#define ITEM_COMET_SHARD 156
#define ITEM_SHOAL_SALT 157
#define ITEM_SHOAL_SHELL 158
#define ITEM_RED_SHARD 159
#define ITEM_BLUE_SHARD 160
#define ITEM_YELLOW_SHARD 161
#define ITEM_GREEN_SHARD 162
#define ITEM_HEART_SCALE 163
#define ITEM_HONEY 164
#define ITEM_RARE_BONE 165
#define ITEM_ODD_KEYSTONE 166
#define ITEM_PRETTY_FEATHER 167
#define ITEM_PRETTY_WING ITEM_PRETTY_FEATHER // Pre-Gen VIII name
#define ITEM_RELIC_COPPER 168
#define ITEM_RELIC_SILVER 169
#define ITEM_RELIC_GOLD 170
#define ITEM_RELIC_VASE 171
#define ITEM_RELIC_BAND 172
#define ITEM_RELIC_STATUE 173
#define ITEM_RELIC_CROWN 174
#define ITEM_STRANGE_SOUVENIR 175

// Fossils
#define ITEM_HELIX_FOSSIL 176
#define ITEM_DOME_FOSSIL 177
#define ITEM_OLD_AMBER 178
#define ITEM_ROOT_FOSSIL 179
#define ITEM_CLAW_FOSSIL 180
#define ITEM_ARMOR_FOSSIL 181
#define ITEM_SKULL_FOSSIL 182
#define ITEM_COVER_FOSSIL 183
#define ITEM_PLUME_FOSSIL 184
#define ITEM_JAW_FOSSIL 185
#define ITEM_SAIL_FOSSIL 186
#define ITEM_FOSSILIZED_BIRD 187
#define ITEM_FOSSILIZED_FISH 188
#define ITEM_FOSSILIZED_DRAKE 189
#define ITEM_FOSSILIZED_DINO 190

// Mulch
#define ITEM_GROWTH_MULCH 191
#define ITEM_DAMP_MULCH 192
#define ITEM_STABLE_MULCH 193
#define ITEM_GOOEY_MULCH 194
#define ITEM_RICH_MULCH 195
#define ITEM_SURPRISE_MULCH 196
#define ITEM_BOOST_MULCH 197
#define ITEM_AMAZE_MULCH 198

// Apricorns
#define ITEM_RED_APRICORN 199
#define ITEM_BLUE_APRICORN 200
#define ITEM_BLU_APRICORN ITEM_BLUE_APRICORN // Pre-Gen VI name
#define ITEM_YELLOW_APRICORN 201
#define ITEM_YLW_APRICORN ITEM_YELLOW_APRICORN // Pre-Gen VI name
#define ITEM_GREEN_APRICORN 202
#define ITEM_GRN_APRICORN ITEM_GREEN_APRICORN // Pre-Gen VI name
#define ITEM_PINK_APRICORN 203
#define ITEM_PNK_APRICORN ITEM_PINK_APRICORN // Pre-Gen VI name
#define ITEM_WHITE_APRICORN 204
#define ITEM_WHT_APRICORN ITEM_WHITE_APRICORN // Pre-Gen VI name
#define ITEM_BLACK_APRICORN 205
#define ITEM_BLK_APRICORN ITEM_BLACK_APRICORN // Pre-Gen VI name

#define ITEM_WISHING_PIECE 206
#define ITEM_GALARICA_TWIG 207
#define ITEM_ARMORITE_ORE 208
#define ITEM_DYNITE_ORE 209

// Mail
#define ITEM_ORANGE_MAIL 210
#define ITEM_HARBOR_MAIL 211
#define ITEM_GLITTER_MAIL 212
#define ITEM_MECH_MAIL 213
#define ITEM_WOOD_MAIL 214
#define ITEM_WAVE_MAIL 215
#define ITEM_BEAD_MAIL 216
#define ITEM_SHADOW_MAIL 217
#define ITEM_TROPIC_MAIL 218
#define ITEM_DREAM_MAIL 219
#define ITEM_FAB_MAIL 220
#define ITEM_RETRO_MAIL 221

#define FIRST_MAIL_INDEX ITEM_ORANGE_MAIL
#define LAST_MAIL_INDEX ITEM_RETRO_MAIL

// Evolution Items
#define ITEM_FIRE_STONE 222
#define ITEM_WATER_STONE 223
#define ITEM_THUNDER_STONE 224
#define ITEM_THUNDERSTONE ITEM_THUNDER_STONE // Pre-Gen VI name
#define ITEM_LEAF_STONE 225
#define ITEM_ICE_STONE 226
#define ITEM_SUN_STONE 227
#define ITEM_MOON_STONE 228
#define ITEM_SHINY_STONE 229
#define ITEM_DUSK_STONE 230
#define ITEM_DAWN_STONE 231
#define ITEM_SWEET_APPLE 232
#define ITEM_TART_APPLE 233
#define ITEM_CRACKED_POT 234
#define ITEM_CHIPPED_POT 235
#define ITEM_GALARICA_CUFF 236
#define ITEM_GALARICA_WREATH 237
#define ITEM_DRAGON_SCALE 238
#define ITEM_UPGRADE 239
#define ITEM_UP_GRADE ITEM_UPGRADE // Pre-Gen VIII name
#define ITEM_PROTECTOR 240
#define ITEM_ELECTIRIZER 241
#define ITEM_MAGMARIZER 242
#define ITEM_DUBIOUS_DISC 243
#define ITEM_REAPER_CLOTH 244
#define ITEM_PRISM_SCALE 245
#define ITEM_WHIPPED_DREAM 246
#define ITEM_SACHET 247
#define ITEM_OVAL_STONE 248
#define ITEM_STRAWBERRY_SWEET 249
#define ITEM_LOVE_SWEET 250
#define ITEM_BERRY_SWEET 251
#define ITEM_CLOVER_SWEET 252
#define ITEM_FLOWER_SWEET 253
#define ITEM_STAR_SWEET 254
#define ITEM_RIBBON_SWEET 255

#define ITEM_EVERSTONE 256

// Nectars
#define ITEM_RED_NECTAR 257
#define ITEM_YELLOW_NECTAR 258
#define ITEM_PINK_NECTAR 259
#define ITEM_PURPLE_NECTAR 260

// Plates
#define ITEM_FLAME_PLATE 261
#define ITEM_SPLASH_PLATE 262
#define ITEM_ZAP_PLATE 263
#define ITEM_MEADOW_PLATE 264
#define ITEM_ICICLE_PLATE 265
#define ITEM_FIST_PLATE 266
#define ITEM_TOXIC_PLATE 267
#define ITEM_EARTH_PLATE 268
#define ITEM_SKY_PLATE 269
#define ITEM_MIND_PLATE 270
#define ITEM_INSECT_PLATE 271
#define ITEM_STONE_PLATE 272
#define ITEM_SPOOKY_PLATE 273
#define ITEM_DRACO_PLATE 274
#define ITEM_DREAD_PLATE 275
#define ITEM_IRON_PLATE 276
#define ITEM_PIXIE_PLATE 277

// Drives
#define ITEM_DOUSE_DRIVE 278
#define ITEM_SHOCK_DRIVE 279
#define ITEM_BURN_DRIVE 280
#define ITEM_CHILL_DRIVE 281

// Memories
#define ITEM_FIRE_MEMORY 282
#define ITEM_WATER_MEMORY 283
#define ITEM_ELECTRIC_MEMORY 284
#define ITEM_GRASS_MEMORY 285
#define ITEM_ICE_MEMORY 286
#define ITEM_FIGHTING_MEMORY 287
#define ITEM_POISON_MEMORY 288
#define ITEM_GROUND_MEMORY 289
#define ITEM_FLYING_MEMORY 290
#define ITEM_PSYCHIC_MEMORY 291
#define ITEM_BUG_MEMORY 292
#define ITEM_ROCK_MEMORY 293
#define ITEM_GHOST_MEMORY 294
#define ITEM_DRAGON_MEMORY 295
#define ITEM_DARK_MEMORY 296
#define ITEM_STEEL_MEMORY 297
#define ITEM_FAIRY_MEMORY 298

#define ITEM_RUSTED_SWORD 299
#define ITEM_RUSTED_SHIELD 300

// Colored Orbs
#define ITEM_RED_ORB 301
#define ITEM_BLUE_ORB 302

// Mega Stones
#define ITEM_VENUSAURITE 303
#define ITEM_CHARIZARDITE_X 304
#define ITEM_CHARIZARDITE_Y 305
#define ITEM_BLASTOISINITE 306
#define ITEM_BEEDRILLITE 307
#define ITEM_PIDGEOTITE 308
#define ITEM_ALAKAZITE 309
#define ITEM_SLOWBRONITE 310
#define ITEM_GENGARITE 311
#define ITEM_KANGASKHANITE 312
#define ITEM_PINSIRITE 313
#define ITEM_GYARADOSITE 314
#define ITEM_AERODACTYLITE 315
#define ITEM_MEWTWONITE_X 316
#define ITEM_MEWTWONITE_Y 317
#define ITEM_AMPHAROSITE 318
#define ITEM_STEELIXITE 319
#define ITEM_SCIZORITE 320
#define ITEM_HERACRONITE 321
#define ITEM_HOUNDOOMINITE 322
#define ITEM_TYRANITARITE 323
#define ITEM_SCEPTILITE 324
#define ITEM_BLAZIKENITE 325
#define ITEM_SWAMPERTITE 326
#define ITEM_GARDEVOIRITE 327
#define ITEM_SABLENITE 328
#define ITEM_MAWILITE 329
#define ITEM_AGGRONITE 330
#define ITEM_MEDICHAMITE 331
#define ITEM_MANECTITE 332
#define ITEM_SHARPEDONITE 333
#define ITEM_CAMERUPTITE 334
#define ITEM_ALTARIANITE 335
#define ITEM_BANETTITE 336
#define ITEM_ABSOLITE 337
#define ITEM_GLALITITE 338
#define ITEM_SALAMENCITE 339
#define ITEM_METAGROSSITE 340
#define ITEM_LATIASITE 341
#define ITEM_LATIOSITE 342
#define ITEM_LOPUNNITE 343
#define ITEM_GARCHOMPITE 344
#define ITEM_LUCARIONITE 345
#define ITEM_ABOMASITE 346
#define ITEM_GALLADITE 347
#define ITEM_AUDINITE 348
#define ITEM_DIANCITE 349

// Gems
#define ITEM_NORMAL_GEM 350
#define ITEM_FIRE_GEM 351
#define ITEM_WATER_GEM 352
#define ITEM_ELECTRIC_GEM 353
#define ITEM_GRASS_GEM 354
#define ITEM_ICE_GEM 355
#define ITEM_FIGHTING_GEM 356
#define ITEM_POISON_GEM 357
#define ITEM_GROUND_GEM 358
#define ITEM_FLYING_GEM 359
#define ITEM_PSYCHIC_GEM 360
#define ITEM_BUG_GEM 361
#define ITEM_ROCK_GEM 362
#define ITEM_GHOST_GEM 363
#define ITEM_DRAGON_GEM 364
#define ITEM_DARK_GEM 365
#define ITEM_STEEL_GEM 366
#define ITEM_FAIRY_GEM 367

// Z-Crystals
#define ITEM_NORMALIUM_Z 368
#define ITEM_FIRIUM_Z 369
#define ITEM_WATERIUM_Z 370
#define ITEM_ELECTRIUM_Z 371
#define ITEM_GRASSIUM_Z 372
#define ITEM_ICIUM_Z 373
#define ITEM_FIGHTINIUM_Z 374
#define ITEM_POISONIUM_Z 375
#define ITEM_GROUNDIUM_Z 376
#define ITEM_FLYINIUM_Z 377
#define ITEM_PSYCHIUM_Z 378
#define ITEM_BUGINIUM_Z 379
#define ITEM_ROCKIUM_Z 380
#define ITEM_GHOSTIUM_Z 381
#define ITEM_DRAGONIUM_Z 382
#define ITEM_DARKINIUM_Z 383
#define ITEM_STEELIUM_Z 384
#define ITEM_FAIRIUM_Z 385
#define ITEM_PIKANIUM_Z 386
#define ITEM_EEVIUM_Z 387
#define ITEM_SNORLIUM_Z 388
#define ITEM_MEWNIUM_Z 389
#define ITEM_DECIDIUM_Z 390
#define ITEM_INCINIUM_Z 391
#define ITEM_PRIMARIUM_Z 392
#define ITEM_LYCANIUM_Z 393
#define ITEM_MIMIKIUM_Z 394
#define ITEM_KOMMONIUM_Z 395
#define ITEM_TAPUNIUM_Z 396
#define ITEM_SOLGANIUM_Z 397
#define ITEM_LUNALIUM_Z 398
#define ITEM_MARSHADIUM_Z 399
#define ITEM_ALORAICHIUM_Z 400
#define ITEM_PIKASHUNIUM_Z 401
#define ITEM_ULTRANECROZIUM_Z 402

// Species-specific Held Items
#define ITEM_LIGHT_BALL 403
#define ITEM_LEEK 404
#define ITEM_STICK ITEM_LEEK // Pre-Gen VIII name
#define ITEM_THICK_CLUB 405
#define ITEM_LUCKY_PUNCH 406
#define ITEM_METAL_POWDER 407
#define ITEM_QUICK_POWDER 408
#define ITEM_DEEP_SEA_SCALE 409
#define ITEM_DEEPSEASCALE ITEM_DEEP_SEA_SCALE // Pre-Gen VI name
#define ITEM_DEEP_SEA_TOOTH 410
#define ITEM_DEEPSEATOOTH ITEM_DEEP_SEA_TOOTH // Pre-Gen VI name
#define ITEM_SOUL_DEW 411
#define ITEM_ADAMANT_ORB 412
#define ITEM_LUSTROUS_ORB 413
#define ITEM_GRISEOUS_ORB 414

// Incenses
#define ITEM_SEA_INCENSE 415
#define ITEM_LAX_INCENSE 416
#define ITEM_ODD_INCENSE 417
#define ITEM_ROCK_INCENSE 418
#define ITEM_FULL_INCENSE 419
#define ITEM_WAVE_INCENSE 420
#define ITEM_ROSE_INCENSE 421
#define ITEM_LUCK_INCENSE 422
#define ITEM_PURE_INCENSE 423

// Contest Scarves
#define ITEM_RED_SCARF 424
#define ITEM_BLUE_SCARF 425
#define ITEM_PINK_SCARF 426
#define ITEM_GREEN_SCARF 427
#define ITEM_YELLOW_SCARF 428

// EV Gain Modifiers
#define ITEM_MACHO_BRACE 429
#define ITEM_POWER_WEIGHT 430
#define ITEM_POWER_BRACER 431
#define ITEM_POWER_BELT 432
#define ITEM_POWER_LENS 433
#define ITEM_POWER_BAND 434
#define ITEM_POWER_ANKLET 435

// Type-boosting Held Items
#define ITEM_SILK_SCARF 436
#define ITEM_CHARCOAL 437
#define ITEM_MYSTIC_WATER 438
#define ITEM_MAGNET 439
#define ITEM_MIRACLE_SEED 440
#define ITEM_NEVER_MELT_ICE 441
#define ITEM_NEVERMELTICE ITEM_NEVER_MELT_ICE // Pre-Gen VI name
#define ITEM_BLACK_BELT 442
#define ITEM_BLACKBELT ITEM_BLACK_BELT // Gen II name
#define ITEM_POISON_BARB 443
#define ITEM_SOFT_SAND 444
#define ITEM_SHARP_BEAK 445
#define ITEM_TWISTED_SPOON 446
#define ITEM_TWISTEDSPOON ITEM_TWISTED_SPOON // Pre-Gen VI name
#define ITEM_SILVER_POWDER 447
#define ITEM_SILVERPOWDER ITEM_SILVER_POWDER // Pre-Gen VI name
#define ITEM_HARD_STONE 448
#define ITEM_SPELL_TAG 449
#define ITEM_DRAGON_FANG 450
#define ITEM_BLACK_GLASSES 451
#define ITEM_BLACKGLASSES ITEM_BLACK_GLASSES // Pre-Gen VI name
#define ITEM_METAL_COAT 452

// Choice Items
#define ITEM_CHOICE_BAND 453
#define ITEM_CHOICE_SPECS 454
#define ITEM_CHOICE_SCARF 455

// Status Orbs
#define ITEM_FLAME_ORB 456
#define ITEM_TOXIC_ORB 457

// Weather Rocks
#define ITEM_DAMP_ROCK 458
#define ITEM_HEAT_ROCK 459
#define ITEM_SMOOTH_ROCK 460
#define ITEM_ICY_ROCK 461

// Terrain Seeds
#define ITEM_ELECTRIC_SEED 462
#define ITEM_PSYCHIC_SEED 463
#define ITEM_MISTY_SEED 464
#define ITEM_GRASSY_SEED 465

// Type-activated Stat Modifiers
#define ITEM_ABSORB_BULB 466
#define ITEM_CELL_BATTERY 467
#define ITEM_LUMINOUS_MOSS 468
#define ITEM_SNOWBALL 469

// Misc. Held Items
#define ITEM_BRIGHT_POWDER 470
#define ITEM_BRIGHTPOWDER ITEM_BRIGHT_POWDER // Pre-Gen VI name
#define ITEM_WHITE_HERB 471
#define ITEM_EXP_SHARE 472
#define ITEM_EXP_ALL ITEM_EXP_SHARE // Gen I name
#define ITEM_QUICK_CLAW 473
#define ITEM_SOOTHE_BELL 474
#define ITEM_MENTAL_HERB 475
#define ITEM_KINGS_ROCK 476
#define ITEM_AMULET_COIN 477
#define ITEM_CLEANSE_TAG 478
#define ITEM_SMOKE_BALL 479
#define ITEM_FOCUS_BAND 480
#define ITEM_LUCKY_EGG 481
#define ITEM_SCOPE_LENS 482
#define ITEM_LEFTOVERS 483
#define ITEM_SHELL_BELL 484
#define ITEM_WIDE_LENS 485
#define ITEM_MUSCLE_BAND 486
#define ITEM_WISE_GLASSES 487
#define ITEM_EXPERT_BELT 488
#define ITEM_LIGHT_CLAY 489
#define ITEM_LIFE_ORB 490
#define ITEM_POWER_HERB 491
#define ITEM_FOCUS_SASH 492
#define ITEM_ZOOM_LENS 493
#define ITEM_METRONOME 494
#define ITEM_IRON_BALL 495
#define ITEM_LAGGING_TAIL 496
#define ITEM_DESTINY_KNOT 497
#define ITEM_BLACK_SLUDGE 498
#define ITEM_GRIP_CLAW 499
#define ITEM_STICKY_BARB 500
#define ITEM_SHED_SHELL 501
#define ITEM_BIG_ROOT 502
#define ITEM_RAZOR_CLAW 503
#define ITEM_RAZOR_FANG 504
#define ITEM_EVIOLITE 505
#define ITEM_FLOAT_STONE 506
#define ITEM_ROCKY_HELMET 507
#define ITEM_AIR_BALLOON 508
#define ITEM_RED_CARD 509
#define ITEM_RING_TARGET 510
#define ITEM_BINDING_BAND 511
#define ITEM_EJECT_BUTTON 512
#define ITEM_WEAKNESS_POLICY 513
#define ITEM_ASSAULT_VEST 514
#define ITEM_SAFETY_GOGGLES 515
#define ITEM_ADRENALINE_ORB 516
#define ITEM_TERRAIN_EXTENDER 517
#define ITEM_PROTECTIVE_PADS 518
#define ITEM_THROAT_SPRAY 519
#define ITEM_EJECT_PACK 520
#define ITEM_HEAVY_DUTY_BOOTS 521
#define ITEM_BLUNDER_POLICY 522
#define ITEM_ROOM_SERVICE 523
#define ITEM_UTILITY_UMBRELLA 524

#define ITEM_CHERI_BERRY 525
#define ITEM_CHESTO_BERRY 526
#define ITEM_PECHA_BERRY 527
#define ITEM_RAWST_BERRY 528
#define ITEM_ASPEAR_BERRY 529
#define ITEM_LEPPA_BERRY 530
#define ITEM_ORAN_BERRY 531
#define ITEM_PERSIM_BERRY 532
#define ITEM_LUM_BERRY 533
#define ITEM_SITRUS_BERRY 534
#define ITEM_FIGY_BERRY 535
#define ITEM_WIKI_BERRY 536
#define ITEM_MAGO_BERRY 537
#define ITEM_AGUAV_BERRY 538
#define ITEM_IAPAPA_BERRY 539
#define ITEM_RAZZ_BERRY 540
#define ITEM_BLUK_BERRY 541
#define ITEM_NANAB_BERRY 542
#define ITEM_WEPEAR_BERRY 543
#define ITEM_PINAP_BERRY 544
#define ITEM_POMEG_BERRY 545
#define ITEM_KELPSY_BERRY 546
#define ITEM_QUALOT_BERRY 547
#define ITEM_HONDEW_BERRY 548
#define ITEM_GREPA_BERRY 549
#define ITEM_TAMATO_BERRY 550
#define ITEM_CORNN_BERRY 551
#define ITEM_MAGOST_BERRY 552
#define ITEM_RABUTA_BERRY 553
#define ITEM_NOMEL_BERRY 554
#define ITEM_SPELON_BERRY 555
#define ITEM_PAMTRE_BERRY 556
#define ITEM_WATMEL_BERRY 557
#define ITEM_DURIN_BERRY 558
#define ITEM_BELUE_BERRY 559
#define ITEM_CHILAN_BERRY 560
#define ITEM_OCCA_BERRY 561
#define ITEM_PASSHO_BERRY 562
#define ITEM_WACAN_BERRY 563
#define ITEM_RINDO_BERRY 564
#define ITEM_YACHE_BERRY 565
#define ITEM_CHOPLE_BERRY 566
#define ITEM_KEBIA_BERRY 567
#define ITEM_SHUCA_BERRY 568
#define ITEM_COBA_BERRY 569
#define ITEM_PAYAPA_BERRY 570
#define ITEM_TANGA_BERRY 571
#define ITEM_CHARTI_BERRY 572
#define ITEM_KASIB_BERRY 573
#define ITEM_HABAN_BERRY 574
#define ITEM_COLBUR_BERRY 575
#define ITEM_BABIRI_BERRY 576
#define ITEM_ROSELI_BERRY 577
#define ITEM_LIECHI_BERRY 578
#define ITEM_GANLON_BERRY 579
#define ITEM_SALAC_BERRY 580
#define ITEM_PETAYA_BERRY 581
#define ITEM_APICOT_BERRY 582
#define ITEM_LANSAT_BERRY 583
#define ITEM_STARF_BERRY 584
#define ITEM_ENIGMA_BERRY 585
#define ITEM_MICLE_BERRY 586
#define ITEM_CUSTAP_BERRY 587
#define ITEM_JABOCA_BERRY 588
#define ITEM_ROWAP_BERRY 589
#define ITEM_KEE_BERRY 590
#define ITEM_MARANGA_BERRY 591
#define ITEM_ENIGMA_BERRY_E_READER 592

#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY
#define LAST_BERRY_INDEX  ITEM_ENIGMA_BERRY_E_READER

// TMs/HMs
#define ITEM_TM01 593
#define ITEM_TM02 594
#define ITEM_TM03 595
#define ITEM_TM04 596
#define ITEM_TM05 597
#define ITEM_TM06 598
#define ITEM_TM07 599
#define ITEM_TM08 600
#define ITEM_TM09 601
#define ITEM_TM10 602
#define ITEM_TM11 603
#define ITEM_TM12 604
#define ITEM_TM13 605
#define ITEM_TM14 606
#define ITEM_TM15 607
#define ITEM_TM16 608
#define ITEM_TM17 609
#define ITEM_TM18 610
#define ITEM_TM19 611
#define ITEM_TM20 612
#define ITEM_TM21 613
#define ITEM_TM22 614
#define ITEM_TM23 615
#define ITEM_TM24 616
#define ITEM_TM25 617
#define ITEM_TM26 618
#define ITEM_TM27 619
#define ITEM_TM28 620
#define ITEM_TM29 621
#define ITEM_TM30 622
#define ITEM_TM31 623
#define ITEM_TM32 624
#define ITEM_TM33 625
#define ITEM_TM34 626
#define ITEM_TM35 627
#define ITEM_TM36 628
#define ITEM_TM37 629
#define ITEM_TM38 630
#define ITEM_TM39 631
#define ITEM_TM40 632
#define ITEM_TM41 633
#define ITEM_TM42 634
#define ITEM_TM43 635
#define ITEM_TM44 636
#define ITEM_TM45 637
#define ITEM_TM46 638
#define ITEM_TM47 639
#define ITEM_TM48 640
#define ITEM_TM49 641
#define ITEM_TM50 642
#define ITEM_TM51 643
#define ITEM_TM52 644
#define ITEM_TM53 645
#define ITEM_TM54 646
#define ITEM_TM55 647
#define ITEM_TM56 648
#define ITEM_TM57 649
#define ITEM_TM58 650
#define ITEM_TM59 651
#define ITEM_TM60 652
#define ITEM_TM61 653
#define ITEM_TM62 654
#define ITEM_TM63 655
#define ITEM_TM64 656
#define ITEM_TM65 657
#define ITEM_TM66 658
#define ITEM_TM67 659
#define ITEM_TM68 660
#define ITEM_TM69 661
#define ITEM_TM70 662
#define ITEM_TM71 663
#define ITEM_TM72 664
#define ITEM_TM73 665
#define ITEM_TM74 666
#define ITEM_TM75 667
#define ITEM_TM76 668
#define ITEM_TM77 669
#define ITEM_TM78 670
#define ITEM_TM79 671
#define ITEM_TM80 672
#define ITEM_TM81 673
#define ITEM_TM82 674
#define ITEM_TM83 675
#define ITEM_TM84 676
#define ITEM_TM85 677
#define ITEM_TM86 678
#define ITEM_TM87 679
#define ITEM_TM88 680
#define ITEM_TM89 681
#define ITEM_TM90 682
#define ITEM_TM91 683
#define ITEM_TM92 684
#define ITEM_TM93 685
#define ITEM_TM94 686
#define ITEM_TM95 687
#define ITEM_TM96 688
#define ITEM_TM97 689
#define ITEM_TM98 690
#define ITEM_TM99 691
#define ITEM_TM100 692

#define ITEM_HM01 693
#define ITEM_HM02 694
#define ITEM_HM03 695
#define ITEM_HM04 696
#define ITEM_HM05 697
#define ITEM_HM06 698
#define ITEM_HM07 699
#define ITEM_HM08 700

// Charms
#define ITEM_OVAL_CHARM 701
#define ITEM_SHINY_CHARM 702
#define ITEM_CATCHING_CHARM_GF 703
#define ITEM_EXP_CHARM 704

// Form-changing Key Items
#define ITEM_ROTOM_CATALOG 705
#define ITEM_GRACIDEA 706
#define ITEM_REVEAL_GLASS 707
#define ITEM_DNA_SPLICERS 708
#define ITEM_ZYGARDE_CUBE 709
#define ITEM_PRISON_BOTTLE 710
#define ITEM_N_SOLARIZER 711
#define ITEM_N_LUNARIZER 712
#define ITEM_REINS_OF_UNITY 713

// Battle Mechanic Key Items
#define ITEM_MEGA_RING 714
#define ITEM_Z_POWER_RING 715
#define ITEM_DYNAMAX_BAND 716

// Misc. Key Items
#define ITEM_BICYCLE 717
#define ITEM_MACH_BIKE 718
#define ITEM_ACRO_BIKE 719
#define ITEM_OLD_ROD 720
#define ITEM_GOOD_ROD 721
#define ITEM_SUPER_ROD 722
#define ITEM_DOWSING_MACHINE 723
#define ITEM_ITEMFINDER ITEM_DOWSING_MACHINE // Pre-Gen IV name
#define ITEM_DOWSING_MCHN ITEM_DOWSING_MACHINE // Gen IV-V name
#define ITEM_TOWN_MAP 724
#define ITEM_VS_SEEKER 725
#define ITEM_TM_CASE 726
#define ITEM_BERRY_POUCH 727
#define ITEM_POKEMON_BOX_LINK 728
#define ITEM_POKEMON_BOX ITEM_POKEMON_BOX_LINK // Pre-Gen VIII name
#define ITEM_COIN_CASE 729
#define ITEM_POWDER_JAR 730
#define ITEM_WAILMER_PAIL 731
#define ITEM_POKE_RADAR 732
#define ITEM_POKEBLOCK_CASE 733
#define ITEM_SOOT_SACK 734
#define ITEM_POKE_FLUTE 735
#define ITEM_FAME_CHECKER 736
#define ITEM_TEACHY_TV 737

// Story Key Items
#define ITEM_SS_TICKET 738
#define ITEM_EON_TICKET 739
#define ITEM_MYSTIC_TICKET 740
#define ITEM_AURORA_TICKET 741
#define ITEM_OLD_SEA_MAP 742
#define ITEM_LETTER 743
#define ITEM_DEVON_PARTS 744
#define ITEM_DEVON_GOODS ITEM_DEVON_PARTS // Pre-Gen VI name
#define ITEM_GO_GOGGLES 745
#define ITEM_DEVON_SCOPE 746
#define ITEM_BASEMENT_KEY 747
#define ITEM_SCANNER 748
#define ITEM_STORAGE_KEY 749
#define ITEM_KEY_TO_ROOM_1 750
#define ITEM_RM_1_KEY ITEM_KEY_TO_ROOM_1 // Pre-Gen VI name
#define ITEM_KEY_TO_ROOM_2 751
#define ITEM_RM_2_KEY ITEM_KEY_TO_ROOM_2 // Pre-Gen VI name
#define ITEM_KEY_TO_ROOM_4 752
#define ITEM_RM_4_KEY ITEM_KEY_TO_ROOM_4 // Pre-Gen VI name
#define ITEM_KEY_TO_ROOM_6 753
#define ITEM_RM_6_KEY ITEM_KEY_TO_ROOM_6 // Pre-Gen VI name
#define ITEM_METEORITE 754
#define ITEM_MAGMA_EMBLEM 755
#define ITEM_CONTEST_PASS 756
#define ITEM_PARCEL 757
#define ITEM_OAKS_PARCEL ITEM_PARCEL // Pre-Gen IV name
#define ITEM_SECRET_KEY 758
#define ITEM_BIKE_VOUCHER 759
#define ITEM_GOLD_TEETH 760
#define ITEM_CARD_KEY 761
#define ITEM_LIFT_KEY 762
#define ITEM_SILPH_SCOPE 763
#define ITEM_TRI_PASS 764
#define ITEM_RAINBOW_PASS 765
#define ITEM_TEA 766
#define ITEM_RUBY 767
#define ITEM_SAPPHIRE 768

// GEN IX ITEMS
#define ITEM_ABILITY_SHIELD 769
#define ITEM_CLEAR_AMULET 770
#define ITEM_PUNCHING_GLOVE 771
#define ITEM_COVERT_CLOAK 772
#define ITEM_LOADED_DICE 773
#define ITEM_AUSPICIOUS_ARMOR 774
#define ITEM_BOOSTER_ENERGY 775
#define ITEM_BIG_BAMBOO_SHOOT 776
#define ITEM_GIMMIGHOUL_COIN 777
#define ITEM_LEADERS_CREST 778
#define ITEM_MALICIOUS_ARMOR 779
#define ITEM_MIRROR_HERB 780
#define ITEM_SCROLL_OF_DARKNESS 781
#define ITEM_SCROLL_OF_WATERS 782
#define ITEM_TERA_ORB 783
#define ITEM_TINY_BAMBOO_SHOOT 784

#define ITEM_BUG_TERA_SHARD 785
#define ITEM_DARK_TERA_SHARD 786
#define ITEM_DRAGON_TERA_SHARD 787
#define ITEM_ELECTRIC_TERA_SHARD 788
#define ITEM_FAIRY_TERA_SHARD 789
#define ITEM_FIGHTING_TERA_SHARD 790
#define ITEM_FIRE_TERA_SHARD 791
#define ITEM_FLYING_TERA_SHARD 792
#define ITEM_GHOST_TERA_SHARD 793
#define ITEM_GRASS_TERA_SHARD 794
#define ITEM_GROUND_TERA_SHARD 795
#define ITEM_ICE_TERA_SHARD 796
#define ITEM_NORMAL_TERA_SHARD 797
#define ITEM_POISON_TERA_SHARD 798
#define ITEM_PSYCHIC_TERA_SHARD 799
#define ITEM_ROCK_TERA_SHARD 800
#define ITEM_STEEL_TERA_SHARD 801
#define ITEM_WATER_TERA_SHARD 802

#define ITEM_ADAMANT_CRYSTAL 803
#define ITEM_GRISEOUS_CORE 804
#define ITEM_LUSTROUS_GLOBE 805

#define ITEM_BLACK_AUGURITE 806
#define ITEM_LINKING_CORD 807
#define ITEM_PEAT_BLOCK 808
#define ITEM_BERSERK_GENE 809

#define ITEM_FAIRY_FEATHER 810
#define ITEM_SYRUPY_APPLE 811
#define ITEM_UNREMARKABLE_TEACUP 812
#define ITEM_MASTERPIECE_TEACUP 813
#define ITEM_CORNERSTONE_MASK 814
#define ITEM_WELLSPRING_MASK 815
#define ITEM_HEARTHFLAME_MASK 816
#define ITEM_HEALTH_MOCHI 817
#define ITEM_MUSCLE_MOCHI 818
#define ITEM_RESIST_MOCHI 819
#define ITEM_GENIUS_MOCHI 820
#define ITEM_CLEVER_MOCHI 821
#define ITEM_SWIFT_MOCHI 822
#define ITEM_FRESH_START_MOCHI 823
#define ITEM_GLIMMERING_CHARM 824
#define ITEM_METAL_ALLOY 825
#define ITEM_STELLAR_TERA_SHARD 826

#define ITEM_ROGUE_ITEM_FIRST   827
#define ITEM_ROGUE_ITEM_LAST    (ITEM_ROGUE_ITEM_FIRST + 200)
#define ITEM_ROGUE_ITEM_COUNT   (ITEM_ROGUE_ITEM_LAST - ITEM_ROGUE_ITEM_FIRST + 1)

#define ITEMS_COUNT             (ITEM_ROGUE_ITEM_LAST + 1)
#define ITEM_FIELD_ARROW ITEMS_COUNT

// A special item id associated with "Cancel"/"Exit" etc. in a list of items or decorations
// Its icon is defined at ITEMS_COUNT as the "return to field" arrow
#define ITEM_LIST_END 0xFFFF

// Berries
#if B_CONFUSE_BERRIES_HEAL >= GEN_8
    #define CONFUSE_BERRY_HEAL_FRACTION 3
#elif B_CONFUSE_BERRIES_HEAL == GEN_7
    #define CONFUSE_BERRY_HEAL_FRACTION 2
#else
    #define CONFUSE_BERRY_HEAL_FRACTION 8
#endif

#if B_CONFUSE_BERRIES_HEAL >= GEN_7
    #define CONFUSE_BERRY_HP_FRACTION 4
#else
    #define CONFUSE_BERRY_HP_FRACTION 2
#endif

// Range of berries given out by various NPCS
#define FIRST_BERRY_MASTER_BERRY      ITEM_POMEG_BERRY
#define LAST_BERRY_MASTER_BERRY       ITEM_NOMEL_BERRY
#define FIRST_BERRY_MASTER_WIFE_BERRY ITEM_CHERI_BERRY
#define LAST_BERRY_MASTER_WIFE_BERRY  ITEM_SITRUS_BERRY
#define FIRST_KIRI_BERRY              ITEM_POMEG_BERRY
#define LAST_KIRI_BERRY               ITEM_NOMEL_BERRY
#define FIRST_ROUTE_114_MAN_BERRY     ITEM_RAZZ_BERRY
#define LAST_ROUTE_114_MAN_BERRY      ITEM_PINAP_BERRY

#define NUM_BERRY_MASTER_BERRIES          (LAST_BERRY_MASTER_BERRY - FIRST_BERRY_MASTER_BERRY + 1)
#define NUM_BERRY_MASTER_BERRIES_SKIPPED  (FIRST_BERRY_MASTER_BERRY - FIRST_BERRY_INDEX)
#define NUM_BERRY_MASTER_WIFE_BERRIES     (LAST_BERRY_MASTER_WIFE_BERRY - FIRST_BERRY_MASTER_WIFE_BERRY + 1)
#define NUM_KIRI_BERRIES                  (LAST_KIRI_BERRY - FIRST_KIRI_BERRY + 1)
#define NUM_KIRI_BERRIES_SKIPPED          (FIRST_KIRI_BERRY - FIRST_BERRY_INDEX)
#define NUM_ROUTE_114_MAN_BERRIES         (LAST_ROUTE_114_MAN_BERRY - FIRST_ROUTE_114_MAN_BERRY + 1)
#define NUM_ROUTE_114_MAN_BERRIES_SKIPPED (FIRST_ROUTE_114_MAN_BERRY - FIRST_BERRY_INDEX)

#define ITEM_TO_BERRY(itemId)(((itemId) - FIRST_BERRY_INDEX) + 1)
#define ITEM_TO_MAIL(itemId)((itemId) - FIRST_MAIL_INDEX)
#define MAIL_NONE 0xFF

#define NUM_TECHNICAL_MACHINES 50 //100
#define NUM_HIDDEN_MACHINES 8

#define MAX_BAG_ITEM_CAPACITY  999
#define MAX_PYRAMID_BAG_ITEM_CAPACITY  99
#define MAX_SHOP_ITEM_CAPACITY  99
#define MAX_PC_ITEM_CAPACITY   999
#define MAX_BERRY_CAPACITY     999

#define BAG_ITEM_CAPACITY_DIGITS 3
#define BERRY_CAPACITY_DIGITS 3
#define SHOP_ITEM_CAPACITY_DIGITS 2
#define MAX_ITEM_DIGITS BERRY_CAPACITY_DIGITS

// Secondary IDs for rods
#define OLD_ROD   0
#define GOOD_ROD  1
#define SUPER_ROD 2

// Secondary IDs for bikes
#define MACH_BIKE 0
#define ACRO_BIKE 1

// Item parameters for EXP Candies
#define EXP_100   1
#define EXP_800   2
#define EXP_3000  3
#define EXP_10000 4
#define EXP_30000 5

// Item type IDs (used to determine the exit callback)
#define ITEM_USE_MAIL             0
#define ITEM_USE_PARTY_MENU       1
#define ITEM_USE_FIELD            2
#define ITEM_USE_PBLOCK_CASE      3
#define ITEM_USE_BAG_MENU         4 // No exit callback, stays in bag menu
#define ITEM_USE_PARTY_MENU_MOVES 5

// Item battle script IDs (need to be non-zero)
#define EFFECT_ITEM_RESTORE_HP              1
#define EFFECT_ITEM_CURE_STATUS             2
#define EFFECT_ITEM_HEAL_AND_CURE_STATUS    3
#define EFFECT_ITEM_INCREASE_STAT           4
#define EFFECT_ITEM_SET_MIST                5
#define EFFECT_ITEM_SET_FOCUS_ENERGY        6
#define EFFECT_ITEM_ESCAPE                  7
#define EFFECT_ITEM_THROW_BALL              8
#define EFFECT_ITEM_REVIVE                  9
#define EFFECT_ITEM_RESTORE_PP              10
#define EFFECT_ITEM_INCREASE_ALL_STATS      11

// Enigma Berry dummy constant
#define EFFECT_ITEM_ENIGMA_BERRY_EREADER    1

#endif  // GUARD_CONSTANTS_ITEMS_H
